package com.yuyou.fn.balance.service;

import com.github.wens.framework.service.ISuperService;
import com.github.wens.mybatisplus.plugins.Page;
import com.yuyou.fn.balance.entity.BalanceWithdrawal;
import com.yuyou.fn.balance.vo.BalanceWithdrawalQueryVo;
import com.yuyou.fn.common.util.Principals;

import java.math.BigDecimal;
import java.util.List;

/**
 *
 * BalanceWithdrawal 表数据服务层接口
 *
 */
public interface IBalanceWithdrawalService extends ISuperService<BalanceWithdrawal,Long> {


    Page<BalanceWithdrawal> findBalanceWithdrawalByQuery(BalanceWithdrawalQueryVo balanceWithdrawalQueryVo, List<Long> campusIds, Integer pageNo , Integer pageSize);

    Long countBalanceWithdrawalByQuery(BalanceWithdrawalQueryVo balanceWithdrawalQueryVo, List<Long> campusIds);

    void audit(Long balanceWithdrawalId, Integer status,String auditRemark , Principals.Principal principal);

    void setupPayStatus(Long[] balanceWithdrawalIds, Principals.Principal principal);

    BalanceWithdrawal saveBalanceWithdrawal(Principals.Principal principal , Long applierMainAccountId, Long acceptCampusId, BigDecimal amount, String bankName, String bankCity, String cardUser, String cardNo, String reasonRemark);
}